import React, { Component } from 'react'

export default class Test extends Component {
  state = {
    msg: 'hello',
  }
  // 控制组件是否继续更新的一个生命周期钩子函数. 返回true,则组件继续更新,返回false则组件停止更新
  shouldComponentUpdate(nextprops, nextState) {
    // 需要判断传递过来的props是否发生变化,变化了Test才更新. 没有变化则不更新
    // 获取上一次的数据 this.props和this.state
    // 获取最新的数据 nextProps和nextState
    // if (nextprops.c !== this.props.c) {
    //   return true
    // } else {
    //   return false
    // }
    return nextprops.c !== this.props.c || nextState.msg !== this.state.msg
  }
  render() {
    console.log('test更新了')
    return (
      <div>
        Test,{this.props.c}, {this.state.msg}
        <button
          onClick={() => {
            this.setState({
              msg: 'world',
            })
          }}
        >
          修改msg
        </button>
      </div>
    )
  }
}
